1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package com.google.common.collect.testing;
18
19 import com.google.common.annotations.GwtCompatible;
20
21 import java.util.List;
22 import java.util.Map;
23 import java.util.Map.Entry;
24
25
26
27
28
29
30
31
32
33 @GwtCompatible
34 public abstract class TestStringMapGenerator
35 implements TestMapGenerator<String, String> {
36
37 @Override
38 public SampleElements<Map.Entry<String, String>> samples() {
39 return new SampleElements<Map.Entry<String, String>>(
40 Helpers.mapEntry("one", "January"),
41 Helpers.mapEntry("two", "February"),
42 Helpers.mapEntry("three", "March"),
43 Helpers.mapEntry("four", "April"),
44 Helpers.mapEntry("five", "May")
45 );
46 }
47
48 @Override
49 public Map<String, String> create(Object... entries) {
50 @SuppressWarnings("unchecked")
51 Entry<String, String>[] array = new Entry[entries.length];
52 int i = 0;
53 for (Object o : entries) {
54 @SuppressWarnings("unchecked")
55 Entry<String, String> e = (Entry<String, String>) o;
56 array[i++] = e;
57 }
58 return create(array);
59 }
60
61 protected abstract Map<String, String> create(
62 Entry<String, String>[] entries);
63
64 @Override
65 @SuppressWarnings("unchecked")
66 public final Entry<String, String>[] createArray(int length) {
67 return new Entry[length];
68 }
69
70 @Override
71 public final String[] createKeyArray(int length) {
72 return new String[length];
73 }
74
75 @Override
76 public final String[] createValueArray(int length) {
77 return new String[length];
78 }
79
80
81 @Override
82 public Iterable<Entry<String, String>> order(
83 List<Entry<String, String>> insertionOrder) {
84 return insertionOrder;
85 }
86 }